/*
 *  LinearModule.h
 *  
 *
 *  Created by Thomas Fu on 6/9/11.
 *  Copyright 2011 __MyCompanyName__. All rights reserved.
 *
 */

#ifndef _LinearModule_h
#define _LinearModule_h

#include "FastNN.h"
#include <string.h>

typedef struct
{
	double *inputHistory;
	
	double *inputWeights;
	
	double *outputHistory;
	
	double *outputWeights;
	
	int oldestBufferEntry;
	
	int order;
	
} LinearModule;

void initializeLinearModule(LinearModule *lm);

void intializeLinearModule(LinearModule *lm, double *iWeights, double *oWeights);
double advanceModule(LinearModule *lm, double val);

#endif